// interface IObject {
//   [K: string]: any;
// }
type Merge<T extends object, P extends object> = {
  [K in keyof T | keyof P]: K extends keyof P
    ? P[K]
    : K extends keyof T
    ? T[K]
    : never;
};
